package br.com.medvagas.web.mb.p;

import java.io.Serializable;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;

import br.com.medvagas.comum.entidade.UsuarioDescadastrado;
import br.com.medvagas.comum.entidade.UsuarioProfissional;
import br.com.medvagas.comum.enumeracao.TipoUsuarioEnum;
import br.com.medvagas.comum.util.JSFMensagem;
import br.com.medvagas.comum.util.UtilJSF;
import br.com.medvagas.comum.util.UtilSpring;
import br.com.medvagas.negocio.facade.p.IManterProfissional;

@ManagedBean
@RequestScoped
public class DescadastrarProfissionalMB implements Serializable {
	private static final long serialVersionUID = 1L;
	
	private UsuarioDescadastrado usuarioDescadastrado;
	
	public DescadastrarProfissionalMB() {
		usuarioDescadastrado = new UsuarioDescadastrado();
	}
	
	public String descadastrar() {
		UsuarioProfissional upSessao = UtilJSF.getUsuarioProfissionalLogado();
		usuarioDescadastrado.setIdAntigoUsuario(upSessao.getIdUsuarioProfissional());
		usuarioDescadastrado.setTipo(TipoUsuarioEnum.PROFISSIONAL.getValor());
		usuarioDescadastrado.setNome(upSessao.getNome());
		usuarioDescadastrado.setCpf(upSessao.getCpf());
		usuarioDescadastrado.setEmail(upSessao.getEmail());
		
		IManterProfissional mp = (IManterProfissional) UtilSpring.getBean(IManterProfissional.NOME);
		mp.descadastrar(usuarioDescadastrado);
		JSFMensagem.addMenssagemInfo("MSG_0016");
		
		UtilJSF.invalidarSessao();
		return "indexprofissional";
	}

	public UsuarioDescadastrado getUsuarioDescadastrado() {
		return usuarioDescadastrado;
	}

	public void setUsuarioDescadastrado(UsuarioDescadastrado usuarioDescadastrado) {
		this.usuarioDescadastrado = usuarioDescadastrado;
	}

}
